home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Franz PD / Franz PD Disk #279 (1993)(Rhein-Sieg-Soft).zip / Franz PD Disk #279 (1993)(Rhein-Sieg-Soft).adf / ak_gen0-lib_V38.20.LHA / ak_gen0-library / Programmers.LHA / Programmers / Examples / ExtFileReq.c < prev    next >
C/C++ Source or Header  |  1993-06-26  |  2KB  |  68 lines

  1.  
  2.  /* ExtFileReq V37.83                                          */
  3.  /* FREEWARE.                                                  */
  4.  /* (c) 1992-93 by Andreas R. Kleinert.                        */
  5.  /* Demonstrates use of the "ak_gen0.library"'s FileRequester. */
  6.  /* (using the extended Requester-Functions of V37+)           */
  7.  /* Also opening of windows is demonstrated.                   */
  8.  /* Written in SAS/C V6.00 for OS V2.04 (V37) Includes.        */
  9.  
  10. #include <ak_gen0/ak_gen0_pragma.h>
  11.  
  12. #include <stdlib.h>
  13.  
  14. #include <proto/exec.h>
  15. #include <proto/intuition.h>
  16.  
  17. void main(long argc, char **argv) /* MAIN */
  18. {
  19.  struct Window *tst_win = N;
  20.  char *fptr = N;
  21.  
  22.  IntuitionBase = (struct IntuitionBase *) OpenLibrary("intuition.library", 0);
  23.  
  24.   /* will always be open because of version==0 */
  25.  
  26.  printf("\nExtFileReq V37.83, FREEWARE, (c) 1992-93 by Andreas R. Kleinert.\n");
  27.  
  28.  AKBase = (struct AKBase *) OpenLibrary("ak_gen0.library", 37); /* minimum */
  29.  if(AKBase)
  30.   {
  31.    tst_win = AK_Window( 0, 0, 640, 256, 1, 2, N, (ACTIVATE|WINDOWSIZING|NOCAREREFRESH|SIMPLE_REFRESH), N, N, "Test-Window", N, N, 640, 256, 640, 256, WBENCHSCREEN);
  32.    if(tst_win)
  33.     {
  34.      struct AK_Requester *ak_req = N;
  35.  
  36.      ak_req = AK_AllocRequester(AK_REQTYPE_FILE);  /* Allocate Requester */
  37.      if(ak_req)
  38.       {
  39.        ak_req->akr_Window     = CURRENT_WINDOW;     /* optional */
  40.        ak_req->akr_OKText     = " Load ";           /* optional */
  41.        ak_req->akr_CancelText = " Quit ";           /* optional */
  42.        ak_req->akr_LeftEdge   = 75;                 /* optional */
  43.        ak_req->akr_TopEdge    = 25;                 /* optional */
  44.  
  45.        ak_req->akr_Default1   = (ULONG) "DemoDir/"; /* optional */
  46.        ak_req->akr_Default2   = (ULONG) "DemoFile"; /* optional */
  47.  
  48.        fptr = AK_ExtFileRequest(ak_req);
  49.  
  50.        if(fptr) FreeMem(fptr, AK_FILEREQ_STRING_LEN); /* free string returned by function */
  51.                                                       /* may be NULL (check out !)        */
  52.        AK_FreeRequester(ak_req);                      /* Free Requester */
  53.       }
  54.  
  55.      CloseWindow(tst_win);
  56.     }
  57.  
  58.    CloseLibrary((APTR) AKBase);
  59.   }else
  60.   {
  61.    printf("\n Can't open \42ak_gen0.library\42 V37+ !\n");
  62.   }
  63.  
  64.  CloseLibrary((APTR) IntuitionBase);
  65.  
  66.  exit(0);
  67. }
  68.